left_fist = [
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.4183167815208435, 0.10645648092031479, -1.6593892574310303,
    0.15252035856246948, -0.14700782299041748, -1.3719955682754517,
    -0.04432843625545502, -0.15799851715564728, -0.938068151473999,
    -0.12218914180994034, 0.073341965675354, -1.6415189504623413,
    -0.14376045763492584, 0.1927780956029892, -1.3593589067459106,
    -0.0851994976401329, 0.01652289740741253, -0.7474589347839355,
    -0.9881719946861267, -0.3987707793712616, -1.3535722494125366,
    -0.6686224937438965, 0.1261960119009018, -1.080643892288208,
    -0.8101894855499268, -0.1306752860546112, -0.8412265777587891,
    -0.3495230972766876, -0.17784251272678375, -1.4433038234710693,
    -0.46278536319732666, 0.13677796721458435, -1.467200517654419,
    -0.3681888282299042, 0.003404417773708701, -0.7764251232147217,
    0.850964367389679, 0.2769227623939514, -0.09154807031154633,
    0.14500413835048676, 0.09604815393686295, 0.219278022646904,
    1.0451993942260742, 0.16911321878433228, -0.2426234930753708,
    0.11167845129966736, -0.04289207234978676, 0.41644084453582764,
    0.10881128907203674, 0.06598565727472305, 0.756219744682312,
    -0.0963931530714035, 0.09091583639383316, 0.18845966458320618,
    -0.11809506267309189, -0.050943851470947266, 0.5295845866203308,
    -0.14369848370552063, -0.055241718888282776, 0.704857349395752,
    -0.019182899966835976, 0.0923367589712143, 0.3379131853580475,
    -0.45703303813934326, 0.1962839663028717, 0.6254575848579407,
    -0.21465237438678741, 0.06599827855825424, 0.5068942308425903,
    -0.36972442269325256, 0.0603446289896965, 0.07949023693799973,
    -0.14186954498291016, 0.08585254102945328, 0.6355276107788086,
    -0.3033415675163269, 0.05788097903132439, 0.6313892006874084,
    -0.17612087726593018, 0.13209305703639984, 0.3733545243740082,
    0.850964367389679, -0.2769227623939514, 0.09154807031154633,
    -0.4998386800289154, -0.026556432247161865, -0.052880801260471344,
    0.5355585217475891, -0.045960985124111176, 0.27735769748687744,
]

left_right_fist = [
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, -0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.4183167815208435, 0.10645648092031479, -1.6593892574310303,
    0.15252035856246948, -0.14700782299041748, -1.3719955682754517,
    -0.04432843625545502, -0.15799851715564728, -0.938068151473999,
    -0.12218914180994034, 0.073341965675354, -1.6415189504623413,
    -0.14376045763492584, 0.1927780956029892, -1.3593589067459106,
    -0.0851994976401329, 0.01652289740741253, -0.7474589347839355,
    -0.9881719946861267, -0.3987707793712616, -1.3535722494125366,
    -0.6686224937438965, 0.1261960119009018, -1.080643892288208,
    -0.8101894855499268, -0.1306752860546112, -0.8412265777587891,
    -0.3495230972766876, -0.17784251272678375, -1.4433038234710693,
    -0.46278536319732666, 0.13677796721458435, -1.467200517654419,
    -0.3681888282299042, 0.003404417773708701, -0.7764251232147217,
    0.850964367389679, 0.2769227623939514, -0.09154807031154633,
    0.14500413835048676, 0.09604815393686295, 0.219278022646904,
    1.0451993942260742, 0.16911321878433228, -0.2426234930753708,
    0.4183167815208435, -0.10645647346973419, 1.6593892574310303,
    0.15252038836479187, 0.14700786769390106, 1.3719956874847412,
    -0.04432841017842293, 0.15799842774868011, 0.9380677938461304,
    -0.12218913435935974, -0.0733419880270958, 1.6415191888809204,
    -0.14376048743724823, -0.19277812540531158, 1.3593589067459106,
    -0.08519953489303589, -0.016522908583283424, 0.7474592328071594,
    -0.9881719350814819, 0.3987707495689392, 1.3535723686218262,
    -0.6686226725578308, -0.12619605660438538, 1.080644130706787,
    -0.8101896643638611, 0.1306752860546112, 0.8412266373634338,
    -0.34952324628829956, 0.17784248292446136, 1.443304181098938,
    -0.46278542280197144, -0.13677802681922913, 1.467200517654419,
    -0.36818885803222656, -0.0034044249914586544, 0.7764251232147217,
    0.8509642481803894, -0.2769228219985962, 0.09154807776212692,
    0.14500458538532257, -0.09604845196008682, -0.21927869319915771,
    1.0451991558074951, -0.1691131889820099, 0.242623433470726,
]

right_fist = []
for lf, lrf in zip(left_fist, left_right_fist):
    if lf != lrf:
        right_fist.append(lrf)
    else:
        right_fist.append(0)


left_flat_up = [
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0, 1.5129635334014893,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
]

left_flat_down = [
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0, -1.4648663997650146,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
]

right_flat_up = [
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0, -1.5021973848342896,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
]

right_flat_down = [
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0, 0, 1.494218111038208,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
]

relaxed = [
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.0, 0.0, 0.0,
    0.11167845129966736, 0.04289207234978676, -0.41644084453582764,
    0.10881128907203674, -0.06598565727472305, -0.756219744682312,
    -0.0963931530714035, -0.09091583639383316, -0.18845966458320618,
    -0.11809506267309189, 0.050943851470947266, -0.5295845866203308,
    -0.14369848370552063, 0.055241718888282776, -0.704857349395752,
    -0.019182899966835976, -0.0923367589712143, -0.3379131853580475,
    -0.45703303813934326, -0.1962839663028717, -0.6254575848579407,
    -0.21465237438678741, -0.06599827855825424, -0.5068942308425903,
    -0.36972442269325256, -0.0603446289896965, -0.07949023693799973,
    -0.14186954498291016, -0.08585254102945328, -0.6355276107788086,
    -0.3033415675163269, -0.05788097903132439, -0.6313892006874084,
    -0.17612087726593018, -0.13209305703639984, -0.3733545243740082,
    0.850964367389679, 0.2769227623939514, -0.09154807031154633,
    -0.4998386800289154, 0.026556432247161865, 0.052880801260471344,
    0.5355585217475891, 0.045960985124111176, -0.27735769748687744,
    0.11167845129966736, -0.04289207234978676, 0.41644084453582764,
    0.10881128907203674, 0.06598565727472305, 0.756219744682312,
    -0.0963931530714035, 0.09091583639383316, 0.18845966458320618,
    -0.11809506267309189, -0.050943851470947266, 0.5295845866203308,
    -0.14369848370552063, -0.055241718888282776, 0.704857349395752,
    -0.019182899966835976, 0.0923367589712143, 0.3379131853580475,
    -0.45703303813934326, 0.1962839663028717, 0.6254575848579407,
    -0.21465237438678741, 0.06599827855825424, 0.5068942308425903,
    -0.36972442269325256, 0.0603446289896965, 0.07949023693799973,
    -0.14186954498291016, 0.08585254102945328, 0.6355276107788086,
    -0.3033415675163269, 0.05788097903132439, 0.6313892006874084,
    -0.17612087726593018, 0.13209305703639984, 0.3733545243740082,
    0.850964367389679, -0.2769227623939514, 0.09154807031154633,
    -0.4998386800289154, -0.026556432247161865, -0.052880801260471344,
    0.5355585217475891, -0.045960985124111176, 0.27735769748687744,
]

# body joints + left arm + right arm
# 25 + 15 + 15
# smpl(left_hand_pose, right_hand_pose)

left_start = 25 * 3
left_end = left_start + 15 * 3
right_end = left_end + 15 * 3

LEFT_FIST = left_fist[left_start:left_end]
RIGHT_FIST = right_fist[left_end:right_end]

LEFT_FLAT_UP = left_flat_up[20 * 3 : 20 * 3 + 3]
LEFT_FLAT_DOWN = left_flat_down[20 * 3 : 20 * 3 + 3]

RIGHT_FLAT_UP = right_flat_up[21 * 3 : 21 * 3 + 3]
RIGHT_FLAT_DOWN = right_flat_down[21 * 3 : 21 * 3 + 3]

LEFT_RELAXED = relaxed[left_start:left_end]
RIGHT_RELAXED = relaxed[left_end:right_end]

INT_TO_FIST = {
    "lfl": None,
    "lf": LEFT_FIST,
    "lu": LEFT_FLAT_UP,
    "ld": LEFT_FLAT_DOWN,
    "rfl": None,
    "rf": RIGHT_FIST,
    "ru": RIGHT_FLAT_UP,
    "rd": RIGHT_FLAT_DOWN,
}
